Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

ЗАПИСИ

Інформація про навчальний заклад

ВУЗ:
Національний технічний університет України Київський політехнічний інститут
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Не вказано

Інформація про роботу

Рік:
2010
Тип роботи:
Звіт про виконання лабораторної роботи
Предмет:
Основи програмування та алгоритмічні мови

Частина тексту файла

Міністерство освіти і науки України Національний технічний університет України “Київський політехнічний інститут” Кафедра ОТ ЗВІТ про виконання лабораторної роботи № 7 з дисципліни “Основи програмування та алгоритмічні мови” Тема: ЗАПИСИ Варіант 28 Постановка задачі Ввести масив записів, кожен з яких складається з наступних елементів: факультет, курс, група, прізвище та ім’я студента, його екзаменаційні оцінки. Визначити факультет і групу, у якій найбільше відмінників. Аналітичні викладки Блок-схема алгоритму розв’язання задачі  Текст програми program lab_7; uses crt; const max = 25; type yeartype = 1..6; marktype = 2..5; perf = record g : string[6]; p : byte; end; pbs = array [0..10] of perf; Student = record fac : string[5]; year : yeartype; group : string[6]; FIO : string [16]; marks : record OP : marktype; ODM : marktype; MA : marktype; end; perf : boolean; end; mas = array[0..25] of Student; var b:mas; {baza dannih} k {kolichestvo grupp} ,l {nomer gruppi s naib. kol. otlichnikov} ,n:byte; {kolichestvo studentov} pb:pbs; {massiv grupp} procedure inp(var m:mas; var n:byte); var i:byte; begin i := 1; while not eof do begin with m[i] do begin { writeln ('Student ', i);} { write ('FAC(5): ');} read (FAC); { write ('year(1-6): ');} read (year); { write ('group(5): ');} read (group); read (FIO); with marks do begin {writeln('3 x marks(3-5): ');} read (OP, ODM); readln(MA); end; if (marks.OP=5) and (marks.ODM=5) and (marks.MA=5) then perf := True else perf := False; end; i := i + 1; end; i := i - 1; n := i; end; procedure output(const m:mas; const n:byte); var i:byte; begin writeln ('fac:':7, 'year':5, 'group':7, 'FIO':18, 'OP':4, 'ODM':4, 'MA':4, 'Otl':6); for i := 1 to n do with b[i] do begin write (fac:7,year:5,group:7,FIO:18); with marks do write (OP:4,ODM:4,MA:4); write (perf:6); writeln; end; end; procedure swap(var a, b: Student); var c : Student; begin c := a; a := b; b := c; end; procedure sort(var m : mas; const n:byte); var i, j, k: byte; begin For k:=1 to n-1 do for j := 1 to n-k do if m[j].group > m[j+1].group then swap(m[j],m[j+1]); end; procedure getpb(const m:mas; var pb:pbs; var k:byte); var i:byte; begin k := 0; for i := 1 to n do begin if m[i].group<>m[i-1].group then begin k := k + 1; pb[k].g := m[i].group; end; if m[i].perf=True then pb[k].p := pb[k].p + 1; end; end; function getb(const pb:pbs; const k:byte):byte; var i, b, ps:byte; begin ps := 0; for i:=1 to k do if pb[i].p > ps then begin ps := pb[i].p; b := i; end; getb := b; end; begin TextColor(0); TextBackGround(7); clrscr; assign (input, '7in.txt'); reset (input); inp(b, n); output(b, n); sort (b, n); output (b, n); getpb(b, pb, k); l := getb(pb, k); writeln ('Bolshe vsego otlichnikov v gruppe ', pb[l].g); readkey; close (input); end. Результати виконання програми / Висновок Під час виконання лабораторної роботи я вивчив особливості організації роботи з записами. Програма працює правильно і виводить групу з найбільшою кількістю відмінників
Антиботан аватар за замовчуванням

01.03.2013 19:03

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини